Phát triển ứng dụng đa nền tảng Lazarus_(IDE)

Lazarus sử dụng Free Pascal làm trình biên dịch phía sau. Vì vậy, về mặt lý thuyết thì Lazarus hỗ trợ cho tất cả các nền tảng mà Free pascal hỗ trợ. Giống như thư viện run-time của free pascal, lazarus hỗ trợ một khung làm việc ứng dụng xuyên nền tảng gọi là Lazarus Component Library (LCL), nó cung cấp cho lập trình viên giao diện thống nhất, với các khai báo nền tảng khác nhau. Câu châm ngôn của LCL là write once, compile anywhere - Viết một lần, biên dịch mọi nơi.

Biên dịch đa nền

Giống như Free pascal, lazarus biên dịch được từ Windows, Linux, FreBSD tới MacOS,...Có thể biên dịch cho Mac OS phiên bản cũ, nhưng không thích hợp cho các phiên bản mới của Intel, kể từ khi Apple ngừng cung cấp mã nguồn thêmCác ứng dụng dành cho thiết bị nhúng (Phones, PDA's, routers, game consoles) được biên dịch trên Window hoặc *nix

Thư viện thành phần của Lazarus

LCL đã được mô hình hóa kể từ sau VCL của Delphi 6, nhưng nó thích hợp cho nhiều hệ điều hành hơn là chỉ Windows. Điều này được thực hiện bằng cách định nghĩa lớp WidgetThống kê các Widget trên Lazarus năm 2011:

Tập hợp WidgetHệ điều hành hỗ trợTrạng thái
Windows API, GDIWindowsSử dụng chính thức
Windows CE API, GDIWindows CESử dụng chính thức
GTK+ 1.2.xLinux (via X11)Bị phản đối
GTK+ 2.8+Windows, Linux (X11 and framebuffer) and Mac OS X (via X11)Sử dụng chính thức
GTK+ 3.xAs Gtk2Alpha
Qt 4.5+Windows, Linux (X11 and framebuffer), Mac OS XSử dụng chính thức. Works in Windows, Linux, Mac OS X, Maemo, etc
CocoaMac OS XĐang thực hiện
CarbonMac OS XSử dụng chính thức
fpGUIWindows, Windows CE, Linux (via X11)Giai đoạn đầu
Lazarus Custom Drawn ControlsAndroid, Windows, Linux (via X11), Mac OS XGiai đoạn đầu

Kế hoạch dự định viết ra GTK3 vì GTK2 không triển khai tốt và không kế thừa đặc điểm của GTK1